package com.pkk.spring.cloud.service.gateway.route;

import org.springframework.beans.factory.DisposableBean;
import org.springframework.beans.factory.InitializingBean;

/**
 * 初始化路由信息
 *
 * @author peikunkun
 * @version V1.0
 * @date 2021-01-23 10:41
 **/
public interface InitRouteDefinitionInterface extends InitializingBean, DisposableBean {

  /**
   * 初始化动态路由
   *
   * @author peikunkun
   * @date 2021/1/23 0023 上午 10:43
   */
  void init() throws Exception;

  /**
   * 默认执行销毁操作
   *
   * @return void
   * @Param args
   * @author peikunkun
   * @date 2021/1/23 0023 下午 4:23
   * @since
   */
  @Override
  default void destroy() throws Exception {
    //用户可在此处做一些容器销毁需要做的操作
  }

  /**
   * 默认执行初始化操作
   *
   * @return void
   * @Param args
   * @author peikunkun
   * @date 2021/1/23 0023 下午 4:23
   * @since
   */
  @Override
  default void afterPropertiesSet() throws Exception {
    this.init();
  }






}
